package com.pig4cloud.pigx.system.mapstruct;

import com.pig4cloud.pigx.system.dto.SystemPlatformAddDTO;
import com.pig4cloud.pigx.system.dto.SystemPlatformEditDTO;
import com.pig4cloud.pigx.system.entity.SystemPlatform;
import com.pig4cloud.pigx.system.vo.SystemPlatformOptionVO;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;

import java.util.List;

/**
 * SystemPlatformStruct
 *
 * @since 2022/11/24 11:37
 */
@Mapper
public interface SystemPlatformStruct {
	SystemPlatformStruct INSTANCE = Mappers.getMapper(SystemPlatformStruct.class);

	/**
	 * addDTO -> entity
	 *
	 * @param dto dto
	 * @return {@link SystemPlatform}
	 * @since 2022/2/8
	 */
	SystemPlatform addDTO2entity(SystemPlatformAddDTO dto);

	/**
	 * editDTO -> entity
	 *
	 * @param dto dto
	 * @return {@link SystemPlatform}
	 * @since 2022/2/8
	 */
	SystemPlatform editDTO2entity(SystemPlatformEditDTO dto);

	/**
	 * list -> optionVOList
	 *
	 * @param list list
	 * @return {@link List< SystemPlatformOptionVO>}
	 * @since 2022/2/8
	 */
	List<SystemPlatformOptionVO> list2OptionVOList(List<SystemPlatform> list);
}
